home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / include / linux / dmapool.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  923 b   |  36 lines

  1. /*
  2.  * include/linux/dmapool.h
  3.  *
  4.  * Allocation pools for DMAable (coherent) memory.
  5.  *
  6.  * This file is licensed under  the terms of the GNU General Public 
  7.  * License version 2. This program is licensed "as is" without any 
  8.  * warranty of any kind, whether express or implied.
  9.  */
  10.  
  11. #ifndef LINUX_DMAPOOL_H
  12. #define    LINUX_DMAPOOL_H
  13.  
  14. #include <asm/io.h>
  15. #include <asm/scatterlist.h>
  16.  
  17. struct dma_pool *dma_pool_create(const char *name, struct device *dev, 
  18.             size_t size, size_t align, size_t allocation);
  19.  
  20. void dma_pool_destroy(struct dma_pool *pool);
  21.  
  22. void *dma_pool_alloc(struct dma_pool *pool, gfp_t mem_flags,
  23.              dma_addr_t *handle);
  24.  
  25. void dma_pool_free(struct dma_pool *pool, void *vaddr, dma_addr_t addr);
  26.  
  27. /*
  28.  * Managed DMA pool
  29.  */
  30. struct dma_pool *dmam_pool_create(const char *name, struct device *dev,
  31.                   size_t size, size_t align, size_t allocation);
  32. void dmam_pool_destroy(struct dma_pool *pool);
  33.  
  34. #endif
  35.  
  36.